Computer user interfaces have evolved over time from complex command line interfaces to the user-friendly graphical user interfaces (“GUIs”) that are common on desktop computers today. While computer user interfaces have generally become more easy to use over time, certain classes of computer users still have difficulty with even the friendliest of GUIs. For instance, people generally uncomfortable with technology or that are new to computers may find some modern GUIs difficult to use. Likewise, young children, older people, or persons with cognitive disabilities may find the user experience (“UX”) provided by modern GUIs difficult to understand and to interact with. UX refers to the visual and audio aspects of a user interface along with the manner in which a user interacts with the user interface.
Most modern GUIs provide features that allow a user to customize aspects of the UX. For instance, a GUI may provide themes that can be applied to change the visual appearance of the GUI. These types of customizations, however, are generally limited to customizing the stylistic aspects of user interface (“UI”) windows and other UI objects. Some operating systems also provide accessibility features that allow the UX to be customized for users with physical disabilities, such as users with poor eyesight or poor hand-eye coordination. As an example, a user may be permitted to select a high contrast color scheme or to magnify portions of the GUI for improved readability. A user may be similarly permitted to modify the manner in which a user interface device operates in order to improve usability in view of a particular physical disability.
In this manner, the customization and accessibility features provided by some operating systems allow the UX to be customized to a degree for a particular user. In the event that additional customization of the UX is needed for a particular user, however, it is almost always necessary to create custom program code. For instance, even with the use of accessibility features, people with certain types of cognitive disabilities may be confused by the UX provided by current GUIs. Through the use of a simplified UI customized to the needs of the particular user, however, these types of people can often effectively utilize a computer. Provision of a simplified GUI that is customized for the needs of a particular user, however, generally requires the creation of a custom program for providing the GUI. Unfortunately, the programming of a simplified GUI that is customized to the needs of a particular user can be difficult, time consuming, and expensive. Furthermore, after such program code has been developed, it needs to be supported through its life cycle with bug fixes. This custom application will then have to be redone, once a new version of the underlying operating system or application ships. The effort required to create the new GUIs is multiplied by the fact that different target audiences require different customized GUIs.
It is with respect to these considerations and others that the disclosure made herein is provided.